You are here: Symbol Reference > Dew Namespace > Dew.Signal Namespace > Dew.Signal.Units Namespace > Classes > LinearSystems Class > LinearSystems Methods > LowpassToBandpass Method > LinearSystems.LowpassToBandpass Method ([In] TMtx, [In] TVec, [In] TVec, double, double, double)
Dew Signal for .NET
ContentsIndexHome
PreviousUpNext
LinearSystems.LowpassToBandpass Method ([In] TMtx, [In] TVec, [In] TVec, double, double, double)

Convert a lowpass filter prototype in state space form to a bandstop filter.

Syntax
C#
Visual Basic
public static void LowpassToBandpass([In] TMtx a, [In] TVec b, [In] TVec c, ref double D, double CenterFreq, double BW);

Design an analog bandpass filter, where the passband is defined with Wl = 0.2 rad/sec, Wu = 0.6 rad/sec

using Dew.Math; using Dew.Math.Editors; using Dew.Math.Units; using Dew.Signal; using Dew.Signal.Units; using Dew.Math.Tee; using Dew.Signal.Tee; private void button1_Click(object sender, EventArgs e) { Vector z = new Vector(0); Vector p = new Vector(0); Vector num = new Vector(0); Vector den = new Vector(0); Vector Response = new Vector(0); Vector FreqFr = new Vector(0); double k,Wc,BW; double FS = 2; int Order = 5; //design a fifth order filter. IIRFilters.EllipticAnalog(Order,0.2,40,z,p,out k); //design analog protype Wc = Math.Sqrt(0.2*0.6); BW = 0.6 - 0.2; LinearSystems.LowpassToBandpass(z,p,ref k,Wc,BW); //frequency transformation in s-domain LinearSystems.ZeroPoleToTransferFun(num,den,z,p,k); //Define the frequency grid (logarithmic) FreqFr.Length = 1000; SignalUtils.LogRamp(FreqFr,-1,1); //between 0.1 (=10^(-1)) and 10 (=10^1) rad/sec SignalUtils.FrequencyResponseS(num,den,FreqFr,Response,0); //Laplace MtxVecTee.DrawIt(Response,"Frequency response",false); //Y axis linear, X axis logarithmic }
Copyright (c) 1999-2024 by Dew Research. All rights reserved.
What do you think about this topic? Send feedback!